home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C++ / Applications / PICSee Dust 1.01 / Preferences source / PICS_AnimPane.cpp next >
C/C++ Source or Header  |  1995-11-16  |  2KB  |  74 lines

  1. #include "PICS_PreferencesPanes.h"
  2. #include "PICSViewer.h"
  3.  
  4. enum {
  5.     // Animation method pane
  6.     kAnimPane_UsePictureRadio = kPrefsDlog_LastItem,
  7.     kAnimPane_UseMonitorRadio,
  8.     
  9.     kAnimPane_LineSeparator,
  10.     kAnimPane_Box
  11. };
  12.  
  13. // ---------------------------------------------------------------------------
  14.  
  15. void PrefsDialogSetupAnimPane(DialogPtr prefsDlog) {
  16.     // Set animation method
  17.     if ((**sPrefsData->prefs).animationMethod == kUseMonitorGWorldMethod) {
  18.         SelectRadioBtn(prefsDlog, kAnimPane_UseMonitorRadio,
  19.             kAnimPane_UsePictureRadio, kAnimPane_UseMonitorRadio);
  20.     }
  21.     else if ((**sPrefsData->prefs).animationMethod == kUsePictureGWorldMethod) {
  22.         SelectRadioBtn(prefsDlog, kAnimPane_UsePictureRadio,
  23.             kAnimPane_UsePictureRadio, kAnimPane_UseMonitorRadio);
  24.     }
  25. } // END PrefsDialogSetupAnimPane
  26.  
  27. // ---------------------------------------------------------------------------
  28.  
  29. Boolean PrefsDialogGetAnimPaneSettings(DialogPtr prefsDlog) {
  30.     if (GetDlogCtlValue(prefsDlog, kAnimPane_UseMonitorRadio)) {
  31.         (**sPrefsData->prefs).animationMethod = kUseMonitorGWorldMethod;
  32.     }
  33.     else {
  34.         (**sPrefsData->prefs).animationMethod = kUsePictureGWorldMethod;
  35.     }
  36.     
  37.     return(true);
  38. } // END PrefsDialogGetAnimPaneSettings
  39.  
  40. // ---------------------------------------------------------------------------
  41.  
  42. void PrefsDialogAnimPaneHit(DialogPtr prefsDlog, short itemHit) {
  43.     switch(itemHit) {
  44.         case kAnimPane_UseMonitorRadio:
  45.         case kAnimPane_UsePictureRadio:
  46.             SelectRadioBtn(prefsDlog, itemHit,
  47.                 kAnimPane_UsePictureRadio, kAnimPane_UseMonitorRadio);
  48.         break;
  49.     }
  50. } // END PrefsDialogAnimPaneHit
  51.  
  52. // ---------------------------------------------------------------------------
  53.  
  54. void PrefsDialogAnimPaneUpdate(DialogPtr prefsDlog, EventRecord *theEvt, Boolean frontMost) {
  55.     Rect lineRect;
  56.     
  57.     GetDItemRect(prefsDlog, kAnimPane_Box, &lineRect);
  58.     GrayDrawShadowBox(&lineRect, NULL);
  59.     
  60.     GetDItemRect(prefsDlog, kAnimPane_LineSeparator, &lineRect);
  61.     GrayDrawShadowLine(&lineRect, NULL);
  62. } // END PrefsDialogAnimPaneUpdate
  63.  
  64. // ---------------------------------------------------------------------------
  65.  
  66. void PrefsDialogAnimPaneActivate(DialogPtr prefsDlog, Boolean activate) {
  67.     short hiliteMode = activate ? 0 : 255;
  68.     
  69.     for (short i = kAnimPane_UsePictureRadio;
  70.         i <= kAnimPane_UseMonitorRadio; i++) {
  71.         HiliteControl((ControlHandle)GetDItemHdl(prefsDlog, i), hiliteMode);
  72.     }
  73. } // END PrefsDialogAnimPaneActivate
  74.